package CodeTwo;

import java.util.Scanner;

/** @author ASUS */
public class Pwdcheck {
  public static void main(String[] args) {
    int symbols = 4;
    Scanner scan = new Scanner(System.in);
    while (scan.hasNext()) {
      String x;
      // 输入的字符串
      x = scan.nextLine();
      /*System.out.println(x);*/
      // 字符串长度
      int m;
      m = x.length();
      // 表示没有kin种符号
      int kin = 0;
      // 分别表示四种字符（初始化为0）
      int[] kind = new int[4];

      for (int i = 0; i < m; i++) {
        // 为数字
        if (x.charAt(i) >= '0' && x.charAt(i) <= '9') {
          kind[0]++;
        } else if (x.charAt(i) >= 'a' && x.charAt(i) <= 'z') {
          // 为小写字母
          kind[1]++;
        } else if (x.charAt(i) >= 'A' && x.charAt(i) <= 'Z') {
          // 为大写字母
          kind[2]++;
        } else {
          // 其他符号
          kind[3]++;
        }
      }
      for (int i = 0; i < symbols; i++) {
        if (kind[i] == 0) {
          // 表示没有几种符号
          kin++;
        }
      }

      int flag = 0;
      loop1:
      // 双重for循环遍历
      for (int i = 0; i < m - 1; i++) {
        for (int j = i + 1; j < m - 1; j++) {
          // 判断是否有>=2长度的子串重复，i+1!=j：避免000误判的情况
          if (x.charAt(i) == x.charAt(j) && x.charAt(i + 1) == x.charAt(j + 1) && i + 1 != j) {
            // 表示有子串重复
            flag = 1;
            // 跳出循环
            break loop1;
          }
        }
      }
      /*System.out.printf("%d-%d-%d\n", kin, m, flag);*/
      // 不满足题目要求任意条件，输出NG
      if (kin > 1 || m < 8 || flag == 1) {
        System.out.println("NG");
      } else {
        System.out.println("OK");
      }
    }
  }
}
